#ifndef CAMERA_SYSTEM
#define CAMERA_SYSTEM

#include "Base/System.h"
#include "Base/EventObserver.h"
#include <SFML/Graphics.hpp>

namespace CameraMode
{
	enum {FREE, PLAYER};
}

class CameraSystem : public BPL::System, public EventObserver
{
public:
	CameraSystem();
    virtual void update(float dt);
    virtual void addEntity(int ent);
	virtual void attachApp(sf::RenderWindow* app);
	virtual void deleteEntity(int ent);
    virtual void getEvent(sf::Event& event);

    void setMode(int mode);

protected:
	int mpt_mode;
	sf::Vector2f mpt_moveVector;
	float mpt_cameraSpeed;
	sf::View mpt_view;
	int mpt_playerID;

};

#endif
